<template>
  <!-- 数字按钮组件 -->
  <div class="mui-numbox" data-numbox-min="1" :data-numbox-max="'max'">
    <button class="mui-btn mui-btn-numbox-minus" type="button">-</button>
    <input
      id="test"
      class="mui-input-numbox"
      type="number"
      value="1"
      @change="countChanged"
      ref="numbox"
    />
    <!-- 在子组件接收到父组件传来的最大值以后，应用到页面没有效果，会超过该数据，原因是因为当我们逆推的时候，父组件中的数据是通过异步获取的数据 -->
    <button class="mui-btn mui-btn-numbox-plus" type="button">+</button>
  </div>
  <!--分析: 子组件在什么时候调用父组件的方法：首先父组件需要获取的是子组件发生改变你的数据，也就是说当子组件中数字按钮中文本框的值发生改变你的时候，将值传递给父组件，在这里监听文本框发生改变用到的是change事件 -->
</template>
<script>
export default {
  data() {
    return {};
  },
  // 初始化选择框组件
  mounted() {
    mui(".mui-numbox").numbox();
  },
  methods: {
    countChanged() {
      // 每当 文本框的数据被修改的时候，立即把 最新的数据，通过事件调用，传递给父组件
      // console.log(this.$refs.numbox.value);
      // console.log(this.$refs.numbox.value);
      // 通过this.$emit将获取的值传递给父组件
      this.$emit("getcount", parseInt(this.$refs.numbox.value));
      // console.log(this.$refs.numbox.value);
    }
  }
};
</script>
<style lang="scss" scoped>
</style>
